const express = require('express')
const fs = require('fs')
const config = require(process.cwd() + '/src/config/config')

let router = express.Router()

/* GET users listing. */
router.post('/', function(req, res) {
  const oldName = req.body.oldName
  const newName = req.body.newName
  // 先修改资源文件夹的名称
  fs.promises.rename(config.imagesPath + oldName, config.imagesPath + newName).then(() => {
    return fs.promises.rename(config.tilesetsPath + oldName + '.json', config.tilesetsPath + newName + '.json')
  })
  // 再修改图集配置文件的名称
  .then(() => {
    return fs.promises.readFile(config.tilesetsPath + newName + '.json')
  })
  // 再读取配置文件
  .then((data) => {
    // 更名
    data = JSON.parse(data)
    data.name = newName
    const buffer = JSON.stringify(data)
    return fs.promises.writeFile(config.tilesetsPath + newName + '.json', buffer)
  })
  // 再把变更写入配置文件
  .then(() => {
    res.sendStatus(200)
  })
  // 再写入文件
  .catch((err) => {
    console.log(err)
    res.sendStatus(500)
  })
})

module.exports = router
